🛠 Status: In Development
lit-html is currently in development. It's on the fast track to a 1.0 release, so we encourage you to use it and give us your feedback, but there are things that haven't been finalized yet and you can expect some changes.
lit-html
Efficient, Expressive, Extensible HTML templates in JavaScript
![Mentioned in Awesome lit-html](https://awesome.re/mentioned-badge.svg)
Documentation
Full documentation is available at lit-html.polymer-project.org.
Overview
lit-html
lets you write HTML templates in JavaScript with template literals.
lit-html templates are plain JavaScript and combine the familiarity of writing HTML with the power of JavaScript. lit-html takes care of efficiently rendering templates to DOM, including efficiently updating the DOM with new values.
import {html, render} from 'lit-html';
const helloTemplate = (name) => html`<div>Hello ${name}!</div>`;
render(helloTemplate('Steve'), document.body);
render(helloTemplate('Kevin'), document.body);
lit-html
provides two main exports:
html
: A JavaScript template tag used to produce a TemplateResult
, which is a container for a template, and the values that should populate the template.render()
: A function that renders a TemplateResult
to a DOM container, such as an element or shadow root.
Installation
$ npm install lit-html
Status
lit-html
is under active development and has not yet had a 1.0 release. The
internal API may still change somewhat. The html
and render
API is stable.
Contributing
Please see CONTRIBUTING.md.